package com.manage.platform.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.manage.platform.dto.TaskDto;
import com.manage.platform.dto.query.TaskPageQuery;
import com.manage.platform.entity.TaskEntity;
import com.manage.platform.vo.*;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * YWD
 * 2025/9/23
 */
@Mapper
public interface TaskMapper extends BaseMapper<TaskEntity> {

    List<TaskPartVo> getTaskPage(@Param("query") TaskPageQuery query);

    TaskDetailsVo getTaskDetails(@Param("id") Long id);

    List<CommonVo> getTaskList(@Param("name") String name);

    List<CommonVo> getTaskListOne(@Param("name") String name);

//    Boolean saveTask(@Param("dto") TaskDto dto);

    TaskStatisticsVo statistics(@Param("organizeId") Long organizeId);

    List<String> getAnnualList();

    List<TaskTreePartVo> taskListTreePart(@Param("organizeId") Long organizeId,@Param("annual") String annual);

    List<TaskTreePartOneVo> taskListTreePartOne(@Param("organizeId") Long organizeId);

}
